﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using NutriLeaf.Web.Core.General;

namespace NutriLeaf.Web.Core.Recipe
{
    public interface IRecipe
    {
        void AddRecipe(RecipeData Recipe, ref Model.NutriLeafDBEntities context);

        void AddRecipe(string RecipeName,int categoryId,string description,int userId,bool approved, ref Model.NutriLeafDBEntities context);

        List<Model.Recipe> SuggestRecipes(int userId, ref Model.NutriLeafDBEntities context); // NUTRI SENSE

        void RemoveRecipe(int RecipeId, ref Model.NutriLeafDBEntities context);

        void UpdateRecipe(RecipeData RecipeData, ref Model.NutriLeafDBEntities context);

        void UpdateRecipe(Model.Recipe Recipe, ref Model.NutriLeafDBEntities context);

        RecipeData GetRecipeData(int RecipeId, ref Model.NutriLeafDBEntities context);

        List<StringIdPair> GetRecipeNames(string startsWith, ref Model.NutriLeafDBEntities context);

        void ApproveRecipe(int recipeId, ref Model.NutriLeafDBEntities context);

        List<Model.Recipe> GetAllNotApprovedRecipe(int categoryId, ref Model.NutriLeafDBEntities context);

    }
}